package db

import (
	log "github.com/sirupsen/logrus"
	"src/db/db_modle"
	"src/error_msg"
)

// 获取风控指标
func GetRiskOptionList(uid uint) ([]db_modle.RiskRuleBase, error) {
	// 获取用户信息
	user, e := GetUsersInfo(uid)
	if e != nil {
		log.Error(e.Error())
		return []db_modle.RiskRuleBase{}, e
	}
	if user.IsLoan == 0 || user.IsLoan > 2 {
		e := error_msg.UserIsLoanError
		log.Error(" user.IsLoan = ", user.IsLoan, e.Error())
		return []db_modle.RiskRuleBase{}, e
	}

	orm := GetMysqlOrm()
	defer orm.Close()
	var riskOptions []db_modle.RiskRuleBase

	// 用户状态 首贷！=2， 复贷 ！=1
	result := orm.Where("in_use = ?", InUse).Where("check_scene != ?", 3-user.IsLoan).Order("oid asc").Find(&riskOptions)
	if e := result.Error; e != nil {
		log.Error(e.Error())
		return []db_modle.RiskRuleBase{}, e
	}
	if result.RowsAffected == 0 {
		err := error_msg.RiskRuleBaseError
		log.Error(err)
		return []db_modle.RiskRuleBase{}, err
	}
	return riskOptions, nil
}
